package org.jeecg.modules.outbound.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.outbound.entity.BussOutboundOrderDetail;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @Description: 出库单明细
 * @Author: jeecg-boot
 * @Date:   2024-06-19
 * @Version: V1.0
 */
@Data
public class BussOutboundOrderDetailPage{


    /**出库类型*/
    @Excel(name = "出库类型", width = 15)
    @ApiModelProperty(value = "出库类型")
    private String outboundType;

    /**状态*/
    @Excel(name = "状态", width = 15)
    @ApiModelProperty(value = "状态")
    private String status;
    /**仓库*/
    @Excel(name = "仓库", width = 15, dictTable = "erp_warehouse", dicText = "name", dicCode = "id")
    @Dict(dictTable = "erp_warehouse", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "仓库")
    private String warehouseId;
    /**出库日期*/
    @Excel(name = "出库日期", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "出库日期")
    private Date outboundDate;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
    /**物料ID*/
    @Excel(name = "物料ID", width = 15)
    @ApiModelProperty(value = "物料ID")
    private String materialId;
    /**物料编号*/
    @Excel(name = "物料编号", width = 15)
    @ApiModelProperty(value = "物料编号")
    private String materialCode;
    /**物料名称*/
    @Excel(name = "物料名称", width = 15)
    @ApiModelProperty(value = "物料名称")
    private String materialName;
    /**规格型号*/
    @Excel(name = "规格型号", width = 15)
    @ApiModelProperty(value = "规格型号")
    private String noneSpec;
    /**主计量*/
    @Excel(name = "主计量", width = 15, dicCode = "ji_unit")
    @Dict(dicCode = "ji_unit")
    @ApiModelProperty(value = "主计量")
    private String meUnit;

    /**
     * 物料种类
     */
    @ApiModelProperty(value = "物料种类")
    private String categoryCode;
    /**
     * 物料种类
     */
    @ApiModelProperty(value = "物料种类")
    private String category;
    /**数量*/
    @Excel(name = "数量", width = 15)
    @ApiModelProperty(value = "数量")
    private BigDecimal quantity;
    /**单价*/
    @Excel(name = "单价", width = 15)
    @ApiModelProperty(value = "单价")
    private BigDecimal price;
    /**金额*/
    @Excel(name = "金额", width = 15)
    @ApiModelProperty(value = "金额")
    private BigDecimal amount;
    /**辅助单位*/
    @Excel(name = "辅助单位", width = 15, dicCode = "zl_unit")
    @Dict(dicCode = "zl_unit")
    @ApiModelProperty(value = "辅助单位")
    private String auUnit;
    /**辅助数量*/
    @Excel(name = "辅助数量", width = 15)
    @ApiModelProperty(value = "辅助数量")
    private BigDecimal auQuantity;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**上级单号*/
    @Excel(name = "上级单号", width = 15)
    @ApiModelProperty(value = "上级单号")
    private String superiorOrderNumber;
    /**单据编号*/
    @Excel(name = "单据编号", width = 15)
    @ApiModelProperty(value = "单据编号")
    private String code;
    /**批次号*/
    @Excel(name = "批次号", width = 15)
    @ApiModelProperty(value = "批次号")
    private String batchNumber;
    /**库位*/
    @Excel(name = "库位", width = 15)
    @ApiModelProperty(value = "库位")
    private String warehouseLocation;
    /**部门车间*/
    @Excel(name = "部门车间", width = 15, dictTable = "sys_depart", dicText = "depart_name", dicCode = "id")
    @Dict(dictTable = "sys_depart", dicText = "depart_name", dicCode = "id")
    @ApiModelProperty(value = "部门车间")
    private String departmentWorkshop;
    /**宝洁供应商编码*/
    @Excel(name = "宝洁供应商编码", width = 15)
    @ApiModelProperty(value = "宝洁供应商编码")
    private String bjSupplierCode;
    /**宝洁供应商*/
    @Excel(name = "宝洁供应商", width = 15)
    @ApiModelProperty(value = "宝洁供应商")
    private String bjSupplierName;
}
